Due to surface rugosity, the physical and chemical microenvironment at the surface is heterogeneous. Therefore, proteins that have a single class of binding sites in solution can show a dispersion in the binding properties once chemically crosslinked to the surface. As a tool to study this ensemble of surface sites, we have previously introduced a computational approach to determine distributions of affinity and kinetic binding site parameters from experimental surface binding data. This allowed us, for the first time, to account simultaneously for the two most commonly encountered experimental problems of surface binding when using biosensors for characterizing protein interactions, site heterogeneity and mass transport limitation, and thereby model experimental data consistently to within the level of noise of data acquisition. This fully exploits the high sensitivity of surface plasmon resonance biosensors for the study of protein interactions, and provides information of the surface binding sites with unprecedented level of detail. Further applications of this approach to more protein interactions have solidified our knowledge of surface site heterogeneity. We have developed a stand-alone software that allows other scientist to import experimental surface binding kinetics data sets and compute the functional distribution of sites. We have confirmed with a model protein system how the direct protein immobilization can cause heterogeneity and sub-populations with different affinity. We have implemented software for routine analysis with a solution competition assay that quantifies protein interactions in solution.